package main

import (
	"fmt"
	"strconv"
)

func main() {

	//转换
	var v1 string = "true"
	var v2 string = "19"
	var v3 string = "3.1415926"

	//字符串 -> int (返回值有两个,不需要的值可以用 _ 进行忽略)
	var s1, _ = strconv.ParseBool(v1)
	fmt.Printf("s1对应的类型是: %T, s1的值=%v", s1, s1)
	fmt.Println()

	//字符串 -> int64
	//10 表示string是10进制
	//64表示string需要转换为int64
	var s2, _ = strconv.ParseInt(v2, 10, 64)
	fmt.Printf("s1对应的类型是: %T, s1的值=%v", s2, s2)
	fmt.Println()

	//如果转换失败,会直接设置为默认值(需要取err进行判断,是否为nil)
	//字符串 -> float
	var s3 float64
	s3, _ = strconv.ParseFloat(v3, 64)
	fmt.Printf("s1对应的类型是: %T, s1的值=%v", s3, s3)
	fmt.Println()

}
